package ve.usb.crm.hibernate;

import ve.usb.cohesion.runtime.LocalDate;

public class Cronograma implements java.io.Serializable, ve.usb.cohesion.runtime.Auditable {

    /** Creates a new instance of Cronograma */
    public Cronograma() {}
    
    /**
     * Holds value of property id.
     */
    private Long id;

    /**
     * Getter for property id.
     * @return Value of property id.
     */
    public Long getId() {
        return this.id;
    }

    /**
     * Holds value of property idCronograma.
     */
    private long idCronograma;

    /**
     * Getter for property idCronograma.
     * @return Value of property idCronograma.
     */
    public long getIdCronograma() {
        return this.idCronograma;
    }

    /**
     * Setter for property idCronograma.
     * @param idCronograma New value of property idCronograma.
     */
    public void setIdCronograma(long idCronograma) {
        this.id = this.idCronograma = idCronograma;
    }

    /**
     * Holds value of property proyecto.
     */
    private Proyecto proyecto;

    /**
     * Getter for property proyecto.
     * @return Value of property proyecto.
     */
    public Proyecto getProyecto() {
        return this.proyecto;
    }

    /**
     * Setter for property proyecto.
     * @param proyecto New value of property proyecto.
     */
    public void setProyecto(Proyecto proyecto) {
        this.proyecto = proyecto;
    }
    /**
     * Holds value of property contacto.
     */
    private Contacto contacto;

    /**
     * Getter for property contacto.
     * @return Value of property contacto.
     */
    public Contacto getContacto() {
        return this.contacto;
    }

    /**
     * Setter for property contacto.
     * @param contacto New value of property contacto.
     */
    public void setContacto(Contacto contacto) {
        this.contacto = contacto;
    }
    /**
     * Holds value of property fecha.
     */
    private java.util.Date fecha;

    /**
     * Getter for property fecha.
     * @return Value of property fecha.
     */
    public java.util.Date getFecha() {
        return this.fecha;
    }

    /**
     * Setter for property fecha.
     * @param fecha New value of property fecha.
     */
    public void setFecha(java.util.Date fecha) {
        if (fecha==null || fecha instanceof LocalDate)
            this.fecha = fecha;
        else this.fecha = new LocalDate(fecha);
    }

    /**
     * Holds value of property descripcion.
     */
    private String descripcion = "";

    /**
     * Getter for property descripcion.
     * @return Value of property descripcion.
     */
    public String getDescripcion() {
        return this.descripcion;
    }

    /**
     * Setter for property descripcion.
     * @param descripcion New value of property descripcion.
     */
    public void setDescripcion(String descripcion) {
        this.descripcion = descripcion;
    }

    /**
     * Holds value of property tipo.
     */
    private byte tipo;

    /**
     * Getter for property tipo.
     * @return Value of property tipo.
     */
    public byte getTipo() {
        return this.tipo;
    }

    /**
     * Setter for property tipo.
     * @param tipo New value of property tipo.
     */
    public void setTipo(byte tipo) {
        this.tipo = tipo;
    }




    public String toString() {
        return "<Cronograma id='C" + this.id +
      //idCronograma
        ((proyecto==null) ? "" : "\" proyecto =\"C" + proyecto.getId()) +

        ((contacto==null) ? "" : "\" contacto =\"C" + contacto.getId()) +

      "\" fecha =\"" + fecha +
      "\" descripcion =\"" + descripcion +
      "\" tipo =\"" + tipo +

        "'/>";
    }

}